/*
* 存放 列表 配置
* */
let commonOption = {
    height: 'auto',
    calcHeight: 0,
    dialogWidth: 900,
    tip: false,
    searchShow: true,
    searchMenuSpan: 6,
    border: true,
    index: true,
    selection: true,
    labelWidth: 120,
    menuWidth: 200,
    viewBtn: false,
    dialogClickModal: false,
    tabs: true,
    delBtn: false,
    addBtn: false,
    editBtn: false,
    refreshBtn: false,
    columnBtn: false,
    align: "left",
    size: "small",
    fit: true
};

/**
 * 列表可公用字段
 * */
let column = [
    {
        label: "创建者",
        prop: "creatorName"
    },
    {
        label: "创建时间",
        prop: "createTime",
        width: "150px"
    },
    {
        label: "修改者",
        prop: "modifierName"
    },
    {
        label: "修改时间",
        prop: "modifyTime",
        width: "150px"
    },
]


let allOptions = {
    AppListOption: {
        ...commonOption,
        column: [
            {
                label: "名称",
                prop: "nameCn",
            },
            {
                label: '应用名称',
                prop: 'nameEn',
            },
            {
                label: '数据库名称',
                prop: 'databaseName',
            },
            {
                label: "环境标识",
                prop: "environment",
            },
            {
                label: "客户端ID",
                prop: "clientId",
            },
            {
                label: "OSS",
                prop: "ossOid",
                dicUrl: "/api/manager-api/mx-oss/list",
                props: {
                    value: "oid",
                    label: "name"
                }
            },
            {
                label: "布局",
                prop: "layoutName",
            },
            {
                label: "描述",
                prop: "describeCn",
            },
            ...column
        ]
    },
    EnumManageOption: {
        ...commonOption,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 3,
                slotForm: true
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: "编码标识",
                prop: "name",
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "属性类型",
                prop: "attributeType",
                type: "select",
                msSearch: true,
                searchOrder: 1,
                align: "center",
                dicData: [
                    {label: "字符串", value: "string"},
                    {label: "数字", value: "number"},
                    {label: "日期", value: "date"},
                ]
            },
            {
                label: "枚举分类",
                prop: "codeClassify",
                type: "select",
                msSearch: true,
                searchOrder: 4,
                align: "center",
                dicUrl: "/api/manager-api/mx-code-type/codeTypeClassifyList",
                props: {
                    label: "code",
                    value: "value"
                }
            },
            {
                label: "状态",
                prop: "state",
                type: "radio",
                align: "center",
                msSearch: true,
                searchOrder: 2,
                colSpan: 24,
                dicData: [
                    {label: "启用", value: 1},
                    {label: "停用", value: 0},
                ]
            },
            {
                label: "枚举值列表",
                prop: "codeNames",
                width: 120
            },
            ...column
        ]
    },
    EntityModelOption: {
        ...commonOption,
        menuWidth: 300,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 3,
                slotForm: true,
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: "编码标识",
                prop: "name",
            },
            {
                label: "状态",
                prop: "state",
                type: "radio",
                msSearch: true,
                searchOrder: 2,
                colSpan: 12,
                align: "center",
                dicData: [
                    {label: "正在工作", value: 0},
                    {label: "已发布", value: 1},
                    {label: "已作废", value: 2},
                ]
            },
            {
                label: "检出状态",
                prop: "checkState",
                type: "radio",
                align: "center",
                dicData: [
                    {label: "检入", value: 1},
                    {label: "检出", value: 2},
                ]
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "父模型",
                prop: "parentName",
                msSearch: true,
                searchOrder: 1,
                type: "tree",
                dicUrl: "/api/manager-api/mx-type/latestReleaseListIncludedBaseObject",
                props: {
                    label: "nameCn",
                    value: "name"
                },
            },
            {
                label: "大版本号",
                prop: "majorVersion",
                align: "center",
                msSearch: true,
                searchOrder: 4
            },
            {
                label: "小版本号",
                prop: "minorVersion",
                align: "center",
                msSearch: true,
                searchOrder: 4
            },
            {
                label: "模型类型",
                prop: "typeName",
                align: "center",
            },
            // {
            //     label: "模型类型",
            //     prop: "type",
            //     dicUrl: "/api/manager-api/mx-code-type/listCodeByTypeName",
            //     dicQuery: {
            //         name: "modelType"
            //     },
            //     align: "center",
            //     props: {
            //         label: "name",
            //         value: "value"
            //     }
            // },
            {
                label: "是否抽象",
                prop: "abstractFlag",
                align: "center",
                dicData: [
                    {label: "是", value: 1},
                    {label: "否", value: 0},
                ]
            },
            ...column
        ]
    },
    EntityInterfaceOption: {
        ...commonOption,
        menuWidth: 260,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 3,
                slotForm: true
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: '编码标识',
                prop: 'name'
            },
            {
                label: "状态",
                prop: "enableState",
                type: "radio",
                msSearch: true,
                searchOrder: 2,
                colSpan: 24,
                align: "center",
                dicData: [
                    {label: "禁用", value: 0},
                    {label: "启用", value: 1},
                ]
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "接口类型",
                prop: "type",
                type: "select",
                msSearch: true,
                searchOrder: 1,
                align: "center",
                dicData: [
                    {label: "业务接口", value: 1},
                    {label: "功能接口", value: 2},
                ]
            },
            {
                label: "接口属性",
                prop: "interfaceAttribute",
                width: 220,
                slot: true
            },
            {
                label: "检出状态",
                prop: "checkState",
                type: "radio",
                align: "center",
                dicData: [
                    {label: "检入", value: 1},
                    {label: "检出", value: 2},
                ]
            },
            {
                label: "版本",
                prop: "version",
                align: "center",
            },
            // {
            //   label: "功能描述",
            //   prop: "packageName",
            // },
            ...column
        ]
    },
    EntityRelationOption: {
        ...commonOption,
        menuWidth: 300,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 4,
                slotForm: true,
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: '编码标识',
                prop: 'name',
            },
            {
                label: "检出状态",
                prop: "checkState",
                type: "radio",
                align: "center",
                dicData: [
                    {label: "检入", value: 1},
                    {label: "检出", value: 2},
                ]
            },
            {
                label: "状态",
                prop: "state",
                type: "radio",
                msSearch: true,
                searchOrder: 2,
                align: "center",
                dicData: [
                    {label: "正在工作", value: 0},
                    {label: "已发布", value: 1},
                    {label: "已作废", value: 2},
                ]
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            }, {
                label: "大版本号",
                prop: "majorVersion",
                align: "center",
                msSearch: true,
                searchOrder: 3
            },
            {
                label: "小版本号",
                prop: "minorVersion",
                align: "center",
                msSearch: true,
                searchOrder: 4
            },
            {
                label: "From实体",
                prop: "fromTypeNameList",
                type: "tree",
                dicUrl: "/api/manager-api/mx-type/latestReleaseListIncludedBaseObject",
                props: {
                    label: "nameCn",
                    value: "name"
                }
            },
            {
                label: "父模型",
                prop: "parentName",
                msSearch: true,
                searchOrder: 5,
                type: "tree",
                dicUrl: "/api/manager-api/mx-reference/latestReleaseListIncludedBaseObject",
                props: {
                    label: "nameCn",
                    value: "name"
                }
            },
            {
                label: "关系类型",
                prop: "refType",
                msSearch: true,
                searchOrder: 1,
                type: "select",
                align: "center",
                dicUrl: "/api/manager-api/mx-code-type/listCodeByTypeName?name=refenrenceEnum",
                props: {
                    label: "name",
                    value: "value"
                }
            },
            {
                label: "To实体",
                prop: "toTypeNameList",
                type: "tree",
                dicUrl: "/api/manager-api/mx-type/latestReleaseListIncludedBaseObject",
                props: {
                    label: "nameCn",
                    value: "name"
                }
            },
            {
                label: "是否树形",
                prop: "isTree",
                align: "center",
                dicData: [
                    {label: "是", value: 1},
                    {label: "否", value: 0},
                ]
            },
            {
                label: "是否联动修改",
                prop: "isGanged",
                width: "120",
                align: "center",
                dicData: [
                    {label: "是", value: 1},
                    {label: "否", value: 0},
                ]
            },
            ...column
        ]
    },
    PropertiesClassifyOption: {
        ...commonOption,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 3,
                slotForm: true
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: '编码标识',
                prop: 'name',
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "状态",
                prop: "state",
                type: "radio",
                msSearch: true,
                searchOrder: 2,
                align: "center",
                dicData: [
                    {label: "启用", value: 1},
                    {label: "停用", value: 0},
                ]
            },
            {
                label: "类型",
                prop: "columnType",
                type: "select",
                msSearch: true,
                searchOrder: 1,
                align: "center",
                dicUrl: "/api/manager-api/mx-attribute-type/attributeTypeClassifyList",
                props: {
                    label: "name",
                    value: "type"
                }
            },
            {
                label: "精度",
                prop: "accuracy"
            },
            {
                label: "长度",
                prop: "length"
            },
            /* {
                 label: "唯一值",
                 prop: "sole",
                 align: "center",
                 dicData: [
                     {label: "是", value: 1},
                     {label: "否", value: 0},
                 ]
             },
             {
                 label: "多值",
                 prop: "multi",
                 align: "center",
                 dicData: [
                     {label: "是", value: 1},
                     {label: "否", value: 0},
                 ]
             },*/
            {
                label: "校验表达式",
                prop: "validation",
                width: 120
            },
            ...column
        ]
    },
    PropertiesDefinedOption: {
        ...commonOption,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 1,
                slotForm: true,
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: '编码标识',
                prop: 'columnName',
            },
            {
                label: "状态",
                prop: "state",
                type: "radio",
                msSearch: true,
                searchOrder: 2,
                align: "center",
                dicData: [
                    {label: "启用", value: 1},
                    {label: "停用", value: 0},
                ]
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "类型",
                prop: "columnTypeName",
                align: "center",
            },
            {
                label: "单位组",
                prop: "unitGroup",
                cascader: ['unit'],
                type: "select",
                dicUrl: "/api/manager-api/mx-dimension-group/list",
                props: {
                    label: "nameCn",
                    value: "oid"
                }
            },
            {
                label: "默认单位",
                prop: "unitName",
            },
            {
                label: "必填",
                prop: "required",
                align: "center",
                dicData: [
                    {label: "是", value: 1},
                    {label: "否", value: 0},
                ]
            },
            {
                label: "属性分类",
                prop: "attributeTypeNameCn",
            },
            {
                label: "默认值",
                prop: "columnDefaultNameCn",
                slot: true
            },
            ...column
        ]
    },
    UnitsManageOption: {
        ...commonOption,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 1,
                slotForm: true,
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: "编码标识",
                prop: "name",
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "状态",
                prop: "state",
                type: "radio",
                msSearch: true,
                searchOrder: 2,
                colSpan: 12,
                align: "center",
                dicData: [
                    {label: "启用", value: 1},
                    {label: "停用", value: 0},
                ]
            },
            {
                label: "单位列表",
                prop: "dimensionName"
            },
            ...column
        ]
    },
    baseInfoOption: {
        calcHeight: 30,
        dialogWidth: 900,
        tip: false,
        searchShow: true,
        searchMenuSpan: 6,
        border: true,
        index: true,
        selection: true,
        labelWidth: 120,
        // menuWidth: 200,
        viewBtn: false,
        dialogClickModal: false,
        tabs: true,
        delBtn: false,
        addBtn: false,
        editBtn: false,
        refreshBtn: false,
        columnBtn: false,
        align: "center",
        menu: false,
        selectable: (row) => {
            return !(row.extendsFlag === 1);
        },
        column: [
            {
                label: "编码标识",
                prop: "name",
            },
            {
                label: "中文名称",
                prop: "nameCn",
            },
            {
                label: '英文名称',
                prop: 'nameEn',
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "从父类继承",
                prop: "extendsFlag",
                slotForm: true
            }
        ]
    },
    LifeCycleOption: {
        ...commonOption,
        menuWidth: 260,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                slot: true,
                searchOrder: 2
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: '编码标识',
                prop: 'name',
            },
            {
                label: "状态",
                prop: "enableState",
                searchOrder: 1,
                type: "radio",
                msSearch: true,
                align: "center",
                dicData: [
                    {label: "停用", value: 0},
                    {label: "启用", value: 1}
                ]
            }, {
                label: "检出状态",
                prop: "checkState",
                type: "radio",
                align: "center",
                dicData: [
                    {label: "检入", value: 1},
                    {label: "检出", value: 2},
                ]
            },
            {
                label: '版本',
                prop: 'version',
                align: "center",
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "初始状态",
                prop: "initialStateId",
                dicUrl: "/api/state-api/life-cycle-state/list",
                props: {
                    label: "stateName",
                    value: "id"
                }
            },
            {
                label: "状态列表",
                prop: "stateList"
            },
            ...column
        ]
    },
    CodeRulesOption: {
        ...commonOption,
        menuWidth: 260,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                slotForm: true,
                searchOrder: 2
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: '编码标识',
                prop: 'name',
            },
            {
                label: "状态",
                prop: "state",
                searchOrder: 1,
                type: "radio",
                msSearch: true,
                align: "center",
                dicData: [
                    {label: "停用", value: 0},
                    {label: "启用", value: 1}
                ]
            },
            {
                label: "检出状态",
                prop: "checkState",
                type: "radio",
                align: "center",
                dicData: [
                    {label: "检入", value: 1},
                    {label: "检出", value: 2},
                ]
            },
            {
                label: '版本',
                prop: 'version',
                align: "center",
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "序列长度",
                prop: "sequenceLength",
            },
            {
                label: "规则",
                prop: "codeRuleValue",
            },
            ...column
        ]
    },
    VersionRulesOption: {
        ...commonOption,
        menuWidth: 260,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                slotForm: true,
                searchOrder: 2
            },
            {
                label: '英文名称',
                prop: 'nameEn',
            },
            {
                label: '编码标识',
                prop: 'name',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: "状态",
                prop: "state",
                searchOrder: 1,
                type: "radio",
                msSearch: true,
                align: "center",
                dicData: [
                    {label: "停用", value: 0},
                    {label: "启用", value: 1}
                ]
            },
            {
                label: "检出状态",
                prop: "checkState",
                type: "radio",
                align: "center",
                dicData: [
                    {label: "检入", value: 1},
                    {label: "检出", value: 2},
                ]
            },
            {
                label: '版本',
                prop: 'version',
                align: "center",
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "大版本规则",
                prop: "majorRule",
                width: 140
            },
            {
                label: "分隔符",
                prop: "separatorRule",
            },
            {
                label: "小版本规则",
                prop: "minorRule",
                width: 140
            },
            ...column
        ]
    },
    ConditionOption: {
        ...commonOption,
        menuWidth: 240,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 1,
                slot: true,
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: '编码标识',
                prop: 'name',
            },
            {
                label: "状态",
                prop: "enableState",
                type: "radio",
                msSearch: true,
                searchOrder: 2,
                align: "center",
                dicData: [
                    {label: "启用", value: 1},
                    {label: "禁用", value: 0},
                ]
            },
            {
                label: '版本',
                prop: 'version',
                align: "center",
            },
            {
                label: "检出状态",
                prop: "checkState",
                type: "radio",
                align: "center",
                dicData: [
                    {label: "检入", value: 1},
                    {label: "检出", value: 2},
                ]
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "实体类型",
                prop: "typeName",
                type: "tree",
                dicUrl: "/api/manager-api/mx-type/latestReleaseListIncludedBaseObject",
                props: {
                    label: "nameCn",
                    value: "name"
                },
            },
            {
                label: "条件规则",
                prop: "conditionRule"
            },
            ...column
        ]
    },
    TacticsOption: {
        ...commonOption,
        menuWidth: 240,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 3,
                slot: true
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: '编码标识',
                prop: 'name',
            },
            {
                label: "状态",
                prop: "state",
                type: "radio",
                msSearch: true,
                searchOrder: 2,
                align: "center",
                dicData: [
                    {label: "启用", value: 1},
                    {label: "禁用", value: 0},
                ]
            },
            {
                label: "检出状态",
                prop: "checkState",
                type: "radio",
                align: "center",
                dicData: [
                    {label: "检入", value: 1},
                    {label: "检出", value: 2},
                ]
            },
            {
                label: "版本",
                prop: "version",
                align: "center",
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "关联条件",
                prop: "conditionName",
                msSearch: true,
                searchOrder: 1,
                type: "select",
                dicUrl: "/api/manager-api/mx-policy-condition/list",
                props: {
                    label: "nameCn",
                    value: "name"
                }
            },
            {
                label: "实体类型",
                prop: "typeNameCn",
            },
            {
                label: "生效属性",
                prop: "attributeNames",
            },
            {
                label: "用户",
                prop: "partyNameCns",
            },
            {
                label: "是否拒绝",
                prop: "refuseFlag",
                align: "center",
                dicData: [
                    {
                        label: "拒绝",
                        value: 1
                    },
                    {
                        label: "赋予",
                        value: 0
                    }
                ]

            },
            {
                label: "操作能力",
                prop: "operationGroupNames",
            },
            ...column
        ]
    },
    dbbaseConfigOption: {
        ...commonOption,
        index: false,
        column: [
            {
                label: "数据库名称",
                prop: "name",
                slot: true
            },
            {
                label: '数据库类型',
                prop: 'type',
            },
            {
                label: "连接地址",
                prop: "url",
            },
            {
                label: "连接用户信息",
                prop: "username",
            },
            {
                label: "关联应用",
                prop: "applicationNames",
            },
            {
                label: "状态",
                prop: "state",
                align: "center",
                dicData: [
                    // {
                    //     label: "未发布",
                    //     value: 0
                    // },
                    {
                        label: "可用",
                        value: 1
                    },
                    {
                        label: "不可用",
                        value: 2
                    },
                ]
            },
            {
                label: "启用状态",
                prop: "enableState",
                align: "center",
                dicData: [
                    // {
                    //     label: "未发布",
                    //     value: 0
                    // },
                    {
                        label: "禁用",
                        value: 0
                    },
                    {
                        label: "启用",
                        value: 1
                    },
                ]
            },
        ]
    },
    dataSourceConfigOption: {
        ...commonOption,
        index: false,
        selection: false,
        column: [
            {
                label: "名称",
                prop: "name",
                slot: true
            },
            {
                label: '接口URL',
                prop: 'nameEn',
            },
            {
                label: "链接数据库",
                prop: "url",
            },
            {
                label: "配置类型",
                prop: "username",
            },
            {
                label: "链接数据",
                prop: "",
            },
            {
                label: "状态",
                prop: "state",
                align: "center",
                dicData: [
                    {
                        label: "未发布",
                        value: 0
                    },
                    {
                        label: "已发布",
                        value: 1
                    },
                    {
                        label: "锁定",
                        value: 2
                    },
                ]
            }
        ]
    },
    roleManageConfigOption: {
        ...commonOption,
        menuWidth: 240,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
            },
            {
                label: "英文名称",
                prop: "nameEn",
                msSearch: true,
            },
            {
                label: "编码标识",
                prop: "name",
            },
            {
                label: "角色分类",
                prop: "type",

            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "状态",
                prop: "state",
                msSearch: true,
                type: "select",
                align: "center",
                dicData: [
                    {
                        value: 1,
                        label: "启用",
                    },
                    {
                        value: 0,
                        label: "禁用",
                    },
                ]
            },
            {
                label: "创建人",
                prop: "creatorName",
            },
            {
                label: "创建时间",
                prop: "createTime",
            },
            {
                label: "修改人",
                prop: "modifierName",
            },
            {
                label: "修改时间",
                prop: "modifyTime",
            },
        ],
    },
    userGroupConfigOption: {
        ...commonOption,
        menuWidth: 240,
        column: [
            {
                label: "分组编码",
                prop: "name",
                msSearch: true,
            },
            {
                label: "分组名称",
                prop: "nameCn",
                msSearch: true,
            },
            {
                label: "创建人",
                prop: "creatorName",
            },
            {
                label: "创建时间",
                prop: "createTime",
            },
            {
                label: "修改人",
                prop: "modifierName",
            },
            {
                label: "修改时间",
                prop: "modifyTime",
            },
        ],
    },
    taskConfigOption: {
        ...commonOption,
        menuWidth: 120,
        selection: false,
        column: [
            {
                label: "任务ID",
                prop: "id",
            },
            {
                label: "任务描述",
                prop: "jobDesc",
                searchOrder: 2,
                msSearch: true,
            },
            {
                label: "服务名称",
                prop: "jobGroup",
                msSearch: true,
                type: 'select',
                searchOrder: 0,
                hide: true,
                dicUrl: "/api/function-api/jobgroup/pageList",
                // initFirst: true,
                props: {
                    label: "appname",
                    value: "id"
                }
            },
            {
                label: "方法编码",
                msSearch: true,
                prop: "executorHandler",
                searchOrder: 3,
                hide: true,
            },
            {
                label: "调度类型",
                prop: "scheduleType",
            },
            {
                label: "运行模式",
                prop: "glueType",
            },
            {
                label: "负责人",
                prop: "author",
                searchOrder: 4,
                msSearch: true,
            },
            {
                label: "状态 ",
                msSearch: true,
                prop: "triggerStatus",
                type: 'select',
                searchOrder: 1,
                dicData: [
                    {
                        value: 1,
                        label: "启动",
                    },
                    {
                        value: 0,
                        label: "停止",
                    },
                ]
            },
        ],
    },
    globalMethodOption: {
        ...commonOption,
        selection: false,
        menuWidth: 200,
        column: [
            {
                label: "方法名称",
                prop: "methodName",
                msSearch: true,
            },
            {
                label: "方法编码",
                prop: "executorHandler",
                msSearch: true,
            },
            {
                label: "方法描述",
                prop: "methodDesc",
            },
            {
                label: "服务名称",
                prop: "jobGroup",
                msSearch: true,
                type: 'select',
                dicUrl: "/api/function-api/jobgroup/pageList",
                props: {
                    label: "appname",
                    value: "id"
                }
            },
            {
                label: "bean名称",
                msSearch: true,
                prop: "beanName",
            },

            {
                label: "初始方法",
                prop: "initMethod",
            },
            {
                label: "销毁方法",
                prop: "destroyMethod",
            },
            {
                label: "全路径",
                prop: "paramTypes",
            },
            {
                label: "参数名称",
                prop: "paramName",
            },

            {
                label: "添加时间",
                prop: "addTime",
                width: 160,
            },
            {
                label: "更新时间",
                prop: "updateTime",
                width: 160,

            },
        ],
    },
    dispatchLogOption: {
        ...commonOption,
        selection: false,
        menu: false,
        column: [
            {
                label: "服务名称",
                prop: "jobGroup",
                msSearch: true,
                type: 'select',
                searchOrder: 0,
                hide: true,
                cascader: ['jobId'],
                dicUrl: "/api/function-api/jobgroup/pageList",
                props: {
                    label: "appname",
                    value: "id"
                }
            },
            {
                label: "任务",
                prop: "jobId",
                msSearch: true,
                type: 'select',
                searchOrder: 0,
                hide: true,
                dicUrl: `/api/function-api/joblog/getJobsByGroup`,
                props: {
                    label: "appname",
                    value: "id"
                }
            },
            {
                label: "任务ID",
                prop: "id",
            },
            {
                label: "调度时间",
                prop: "triggerTime",
            },
            {
                label: "调度结果",
                prop: "triggerCode",
            },
            {
                label: "调度备注",
                prop: "triggerMsg",
            },
            {
                label: "执行时间",
                prop: "handleTime",
            },
            {
                label: "执行结果",
                prop: "handleCode",
            },
            {
                label: "执行备注",
                prop: "handleMsg",
            },
            {
                label: "状态 ",
                msSearch: true,
                prop: "triggerStatus",
                type: 'select',
                searchOrder: 1,
                hide: true,
                dicData: [
                    {
                        value: 1,
                        label: "成功",
                    },
                    {
                        value: 2,
                        label: "失败",
                    },
                    {
                        value: 3,
                        label: "进行中",
                    },
                ]
            },
        ],
    },
    eventLogOption: {
        ...commonOption,
        selection: false,
        menu: false,
        column: [
            {
                label: "服务名称",
                prop: "jobGroup",
                msSearch: true,
                type: 'select',
                searchOrder: 0,
                hide: true,
                cascader: ['jobId'],
                dicUrl: "/api/function-api/jobgroup/pageList",
                props: {
                    label: "appname",
                    value: "id"
                }
            },
            {
                label: "任务",
                prop: "jobId",
                msSearch: true,
                type: 'select',
                searchOrder: 0,
                hide: true,
                dicUrl: `/api/function-api/joblog/getJobsByGroup`,
                props: {
                    label: "appname",
                    value: "id"
                }
            },
            {
                label: "事件ID",
                prop: "eventId",
            },
            {
                label: "事件名称",
                prop: "messageName",
            },
            {
                label: "调度时间",
                prop: "triggerTime",
            },
            {
                label: "调度结果",
                prop: "triggerCode",
            },
            {
                label: "调度备注",
                prop: "triggerMsg",
            },
            {
                label: "执行时间",
                prop: "handleTime",
            },
            {
                label: "执行结果",
                prop: "handleCode",
            },
            {
                label: "执行备注",
                prop: "handleMsg",
            },
            {
                label: "状态 ",
                msSearch: true,
                prop: "triggerStatus",
                type: 'select',
                searchOrder: 1,
                hide: true,
                dicData: [
                    {
                        value: 1,
                        label: "成功",
                    },
                    {
                        value: 2,
                        label: "失败",
                    },
                    {
                        value: 3,
                        label: "进行中",
                    },
                ]
            },
        ],
    },
    viewListOption: {
        ...commonOption,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                searchOrder: 5,
                msSearch: true,
            },
            {
                label: "编码标识",
                prop: "name",
                searchOrder: 1,
                msSearch: true,
            },
            {
                label: "添加权限",
                prop: "",
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            {
                label: "状态",
                prop: "state",
                searchOrder: 3,
                msSearch: true,
                type: "select"
            },
            {
                label: "实体类型",
                prop: "",
            },
            {
                label: "属性列",
                prop: "",
            },
            {
                label: "条件项",
                prop: "",
            },
            ...column
        ],
    },
    notificationTemplateOption: {
        ...commonOption,
        column: [
            {
                label: "模板名称",
                prop: "nameCn",
                searchOrder: 5,
                slot: true,
                msSearch: true,
            },
            {
                label: "模板编码",
                prop: "name",
                searchOrder: 1,
                msSearch: true,
            },
            {
                label: "定时任务状态",
                prop: "scheduleType",
                slot: true,
            },
            {
                label: "发送渠道",
                prop: "channelName",
            },
            {
                label: "模板类型",
                prop: "",
            },
            {
                label: "发送策略",
                prop: "sendPolicy",
                dicData: [
                    {label: "渠道全发", value: 1},
                    {label: "只发一条（失败尝试下一渠道）", value: 2},
                ]
            },
            {
                label: "接受者类型",
                prop: "receiveType",
                searchOrder: 3,
                msSearch: true,
                type: "select",
                dicData: [
                    {label: "用户", value: 1},
                    {label: "邮箱", value: 2},
                ]
            },
            ...column
        ],
    },
    eventManageOption: {
        ...commonOption,
        selection: false,
        column: [
            {
                label: "事件ID",
                prop: "id",
            },
            {
                label: "事件名称",
                prop: "messageName",
                searchOrder: 1,
                msSearch: true,
            },

            {
                label: "事件编码",
                prop: "messageCode",
            },
            {
                label: "调用方式",
                prop: "isSync",
            },
            {
                label: "通知规则",
                prop: "executorRouteStrategy",
            },
            {
                label: "订阅方法",
                prop: "executorHandler",
                searchOrder: 1,
                msSearch: true,
            },
            {
                label: "状态 ",
                msSearch: true,
                prop: "state",
                type: 'select',
                searchOrder: 1,
                dicData: [
                    {
                        value: 0,
                        label: "启用",
                    },
                    {
                        value: 1,
                        label: "禁用",
                    },
                ]
            },
            {
                label: "提交人",
                prop: "author",
                msSearch: true,
            },


            {
                label: "创建时间",
                prop: "addTime",
            },
        ],
    },
    eventManageLogOption: {
        ...commonOption,
        selection: false,
        column: [
            {
                label: "消息ID",
                prop: "id",
            },
            {
                label: "服务名称",
                prop: "jobGroup",
                msSearch: true,
                type: 'select',
                searchOrder: 0,
                hide: true,
                dicUrl: "/api/function-api/jobgroup/pageList",
                // initFirst: true,
                props: {
                    label: "appname",
                    value: "id"
                }
            },
            {
                label: "消息名字",
                prop: "messageName",
                searchOrder: 1,
                msSearch: true,
            },
            {
                label: "消息编码",
                prop: "messageCode",
            },
            {
                label: "调用方式",
                prop: "isSync",
            },
            {
                label: "规则",
                prop: "executorRouteStrategy",
            },
            {
                label: "订阅方法",
                prop: "executorHandler",
            },
            {
                label: "提交人",
                prop: "author",
            },
            {
                label: "创建时间",
                prop: "addTime",
            },
        ],
    },
    signatureTemplateManageOption: {
        ...commonOption,
        selection: true,
        menuWidth: 300,
        column: [
            {
                label: "中文名称",
                prop: "nameCn",
                msSearch: true,
                searchOrder: 3,
                slot: true
            },
            {
                label: '英文名称',
                prop: 'nameEn',
                msSearch: true,
                searchOrder: 0
            },
            {
                label: '编码标识',
                prop: 'name',
            },
            {
                label: "中文描述",
                prop: "describeCn",
            },
            {
                label: "英文描述",
                prop: "describeEn",
            },
            ...column
        ]
    },
    OSSManageOption: {
        ...commonOption,
        column: [
            {
                label: "name",
                prop: "name",
                msSearch: true,
                slot: true,
            },
            {
                label: 'accessKey',
                prop: 'accessKey',
                msSearch: true,
            },
            {
                label: '地址',
                prop: 'endpoint',
            },
            {
                label: 'secretKey',
                prop: 'secretKey',
            },
            {
                label: "bucketName",
                prop: "bucketName",
            },
            {
                label: "描述",
                prop: "remark",
            },
            ...column
        ]
    },
    cacheManageGroupOption: {
        ...commonOption,
        menuWidth: 240,
        rowKey: 'redisKey',
        column: [
            {
                label: "名称",
                prop: "redisKey",
                msSearch: true,
            },
            {
                label: "备注",
                prop: "remarks",
                cell: true
            },
        ],
    },
    cacheManageOption: {
        ...commonOption,
        menuWidth: 240,
        column: [
            {
                label: "名称",
                prop: "redisKey",
                msSearch: true,
            },
            {
                label: "数据类型",
                prop: "dataType",
            },
            {
                label: "过期时间",
                prop: "expire",
            },
        ],
    },
    fileListOption: {
        ...commonOption,
        addBtn: false,
        menuWidth: 240,
        column: [
            {
                label: "文件名",
                prop: "fileName",
            },
            {
                label: "文件大小",
                prop: "totalSize",
            },
            {
                label: "上传人",
                prop: "creatorName",
            },
            {
                label: "上传时间",
                prop: "createTime",
            },
        ],
    },
    staticListOption: {
        ...commonOption,
        addBtn: false,
        menuWidth: 120,
        column: [
            {
                label: "文件名",
                prop: "originalFileName",
                msSearch: true,
                hide: true,
            },
            {
                label: "文件地址",
                prop: "externalLink",
            },
            {
                label: "上传人",
                prop: "creatorName",
            },
            {
                label: "上传时间",
                prop: "createTime",
            },
        ],
    },
    ConnectListOption: {
        ...commonOption,
        menuWidth: 120,
        column: [
            {
                label: "连接器名称",
                prop: "name",
                width: "150px"
            },
            {
                label: '编码',
                prop: 'code',
                width: "150px"
            },
            {
                label: '描述',
                prop: 'description',
            },
            {
                label: '关键字',
                prop: 'keyword',
                hide: true,
                msSearch: true,
                placeholder: '请输入名称、编码或描述'
            },
            {
                label: "类型",
                prop: "type",
                dicData: [
                    {
                        label: "全局方法",
                        value: 1,
                    },
                    {
                        label: "HTTP请求",
                        value: 2,
                    },
                    {
                        label: "实体方法",
                        value: 3,
                    },
                ]
            },
            {
                label: "状态",
                prop: "enable",
                dicData: [
                    {
                        label: "启用",
                        value: 1,
                    },
                    {
                        label: "禁用",
                        value: 0,
                    },
                ]
            },

            {
                label: "API地址",
                prop: "apiUrl",
                width: "180px"
            },
            {
                label: "参数",
                prop: "parameter",
            },
            {
                label: "创建时间",
                prop: "createTime",
                width: "150px"
            },
            {
                label: "创建时间",
                prop: "createTimeSearch",
                hide: true,
                msSearch: true,
                colSpan: 24,
                type: 'datetimerange'
            },
            {
                label: "所有者",
                prop: "creatorName"
            },
        ]
    },
    TopMenuOption: {
        ...commonOption,
        column: [
            {
                label: "菜单名称",
                prop: "nameCn",
            },
            {
                label: '编码标识',
                prop: 'name',
            },
            {
                label: '图标',
                prop: 'icon',
            },
            {
                label: '权限标识',
                prop: 'code',
            },
            {
                label: "状态",
                prop: "enableFlag",
                dicData: [
                    {
                        label: "启用",
                        value: 1
                    },
                    {
                        label: "停用",
                        value: 0
                    },
                ]
            },
            {
                label: '排序',
                prop: 'orders',
            },
        ]
    },
}

/**
 * 遍历修改 共同属性
 * */
const setOverflowHidden = (v) => {
    for (let key in allOptions) {
        let option = allOptions[key];
        option.column.forEach(i => {
            i["overHidden"] = v;
        })
    }
    return allOptions;
}

export default {
    ...setOverflowHidden(true),
}
